package com.gsbelarus.gedemin.lib.sync.protocol.entity;

import com.gsbelarus.gedemin.lib.sync.protocol.SyncProtocol;

import java.io.Serializable;

public class SyncServiceStatus<T> implements Serializable {

    public enum TypeOfStatus {
        START_SYNC, FINISH_SYNC
    }

    private TypeOfStatus typeOfStatus;
    private SyncProtocol.SyncStatus status = SyncProtocol.SyncStatus.SUCCESSFUL;
    private SyncServiceTask<T> task;

    public TypeOfStatus getTypeOfStatus() {
        return typeOfStatus;
    }

    public SyncServiceStatus<T> setTypeOfStatus(TypeOfStatus typeOfStatus) {
        this.typeOfStatus = typeOfStatus;
        return this;
    }

    public SyncProtocol.SyncStatus getStatus() {
        return status;
    }

    public SyncServiceStatus<T> setStatus(SyncProtocol.SyncStatus status) {
        this.status = status;
        return this;
    }

    public SyncServiceTask<T> getTask() {
        return task;
    }

    public SyncServiceStatus<T> setTask(SyncServiceTask<T> task) {
        this.task = task;
        return this;
    }
}
